$(function () {
    // 表单验证     
    let re_obj = {
        user: /^[a-zA-Z][a-zA-Z0-9_]{4,15}$/,   //  帐号是否合法(字母开头，允许5-16字节，允许字母数字下划线)
        psw: /^[a-zA-Z]\w{5,17}$/,
        tel: /^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/
    }
    let res_obj = {}
    $("form p:nth-child(-n+4) input").on({
        blur: function () {
            if ($(this).prop("id") == "sure") {
                if ($(this).val() == $("#psw").val() && $("#psw").next().css("display") == "block") {
                    $(this).siblings(".right").show();
                    res_obj["sure"] = true
                } else {
                    $(this).siblings(".right").hide();
                    res_obj["sure"] = false
                }
            } else {
                // 获取当前输入框的值
                let inp_val = $(this).val()
                // 获取当前输入框类型
                let inp_id = $(this).prop("id")
                // 获取当前输入框的规则
                let inp_re = re_obj[inp_id]
                // 得到当前输入框输入是否正确
                let result = inp_re.test(inp_val)
                if (result) {
                    $(this).siblings(".right").show();
                    res_obj[inp_id] = true
                } else {
                    $(this).siblings(".right").hide();
                    res_obj[inp_id] = false
                }
            }
        }
    })
    // 验证码
    let arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"]
    function getTestCode(max) {
        return Math.floor(Math.random() * max)
    }
    $("form p:eq(4) span").on({
        click: function () {
            let n = ""
            for (let i = 0; i < 4; i++) {
                n += arr[getTestCode(arr.length)]
            }
            $(this).text(n)
        }
    })
    $("form p:eq(4) input").on({
        blur: function () {
            if ($(this).val().toLowerCase() === $(this).siblings("span").text().toLowerCase()) {
                $(this).siblings(".right").show();
                res_obj["test_code"] = true
            } else {
                $(this).siblings(".right").hide();
                res_obj["test_code"] = false
            }
        }
    })
    // 手机验证码
    let arr1 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    let count = 10
    $("form p:eq(5) button").on({
        click: function () {
            let str = ""
            for (let i = 0; i < 6; i++) {
                str += arr1[getTestCode(arr1.length)]
            }
            $(this).text(count).prop("disabled", true)
            let timer = setInterval(function () {
                count--;
                if (count == 0) {
                    clearInterval(timer);
                    $("form p:eq(5) button").text(str).prop("disabled", false)
                    count = 10;
                } else {
                    $("form p:eq(5) button").text(count);
                }
            }, 1000)
        }
    })
    $("form p:eq(5) input").on({
        blur: function () {
            if ($(this).val() === $(this).siblings("button").text()) {
                $(this).siblings(".right").show();
                res_obj["tel_code"] = true
            } else {
                $(this).siblings(".right").hide();
                res_obj["tel_code"] = false
            }
        }
    })
    // 提交注册验证
    $("form").on({      
        submit: function () {           
            for (key in res_obj) {
                console.log(res_obj[key]);
                if (res_obj[key] == false) {
                    alert("注册失败")
                    return false
                }
            }
            if (Object.keys(res_obj).length == 6) {
                alert("注册成功")
                return true
            }
        }
    })
})